-
Notifications
You must be signed in to change notification settings - Fork 211
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Split shares KV table #2140
Merged
jumaffre
merged 51 commits into
microsoft:master
from
jumaffre:recovery_historical_secrets
Feb 4, 2021
Merged
Split shares KV table #2140
jumaffre
merged 51 commits into
microsoft:master
from
jumaffre:recovery_historical_secrets
Feb 4, 2021
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…nto historical_ledger_secrets
Co-authored-by: Eddy Ashton <ashton.eddy@gmail.com>
recovery_historical_secrets@18512 aka 20210204.18 vs master ewma over 50 builds from 17789 to 18502 |
achamayou
reviewed
Feb 1, 2021
achamayou
reviewed
Feb 1, 2021
achamayou
reviewed
Feb 1, 2021
achamayou
reviewed
Feb 1, 2021
achamayou
reviewed
Feb 1, 2021
achamayou
reviewed
Feb 1, 2021
achamayou
reviewed
Feb 1, 2021
achamayou
approved these changes
Feb 1, 2021
eddyashton
approved these changes
Feb 4, 2021
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Part of #1648
To be able to retrieve historical ledger secrets, CCF must know the version at which a ledger secret was recorded in the KV. Once #2137 is merged, we will be able to record this in the store and recover historical ledger secrets.
The issue was that the
ccf.shares
table was also updated on pure re-share (i.e. reshuffling the recovery shares without refreshing the ledger secret), which meant that we would have to do extra round trips to recover the ledger secrets.The
ccf.shares
now is split into theccf.encrypted_ledger_secrets
to record the previous encrypted ledger secret + version + version at which it was recorded in the store (unused for now, waiting for #2137) + version of the next ledger secret (useful for recovery). Theccf.shares
still contains the latest ledger secret encrypted with the ledger secret wrapping key and the corresponding recovery shares, encrypted with each member's public encryption key.Also tidied up and simplified of bunch of things so that the recovery flow is hopefully a little cleaner.